package cn.wizzer.app.user.modules.services.account;

import cn.wizzer.app.crown.modules.models.CrownOrder;
import cn.wizzer.app.user.modules.models.UserRebate;
import cn.wizzer.app.user.modules.models.vo.UserRebateVO;
import cn.wizzer.framework.base.service.BaseService;
import cn.wizzer.framework.page.Pagination;

import java.math.BigDecimal;

public interface UserRebateService extends BaseService<UserRebate> {
    /**
     * 结算返佣
     *
     * @param order
     */
    void settleRebate(CrownOrder order);

    /**
     * 后台返佣记录分页
     *
     * @param orderNo
     * @param fromUserSearch
     * @param toUserSearch
     * @param searchDate
     * @param pageNumber
     * @param pageSize
     * @return
     */
    Pagination listPage(String conditionData, String orderNo, String fromUserSearch, String toUserSearch, String[] searchDate, int pageNumber, int pageSize);

    /**
     * 统计
     *
     * @param orderNo
     * @param fromUserSearch
     * @param toUserSearch
     * @param searchDate
     * @return
     */
    BigDecimal searchSum(String conditionData, String orderNo, String fromUserSearch, String toUserSearch, String[] searchDate);

    UserRebateVO detail(String id, String userId);
}
